package com.aibaixun.system.service;

import com.aibaixun.common.core.domain.R;
import com.aibaixun.system.domain.TpLayer;
import com.aibaixun.system.domain.TpLayerCompose;
import com.aibaixun.system.domain.dto.TpLayerComposePageDto;
import com.aibaixun.system.domain.dto.TpLayerPageDto;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

/**
* @author zhangyh
* @description 针对表【tp_layer(拓扑图层信息)】的数据库操作Service
* @createDate 2024-06-14 17:30:23
*/
public interface TpLayerService extends IService<TpLayer> {

    R saveLayer(TpLayer dto);

    R updateLayer(TpLayer dto);

    R deleteLayer(Long layerId);

    R<Page<TpLayer>> getLayerDataPage(Page page, TpLayerPageDto pageDto);

    R saveLayerCompose(TpLayerCompose dto);

    R updateLayerCompose(TpLayerCompose dto);

    R deleteLayerCompose(Long layerId);

    R<TpLayerCompose> getLayerComposeDetail(Long composeId);

    R<Page<TpLayerCompose>> getLayerComposeDataPage(Page page, TpLayerComposePageDto pageDto);

    R getAvailableCompose();
}
